// #include "../../src//common/baidu_aip_cpp/speech.h"

// void asr(aip::Speech &client)
// {
//     std::string file_content;
//     aip::get_file_content("16k.pcm", &file_content);

//     Json::Value result = client.recognize(file_content, "pcm", 16000, aip::null);
//     if (result["err_no"].asInt() != 0)
//     {
//         std::cerr << result["err_no"].asString() << std::endl;
//         return;
//     }
//     std::cout << result["result"][0].asString() << std::endl;
// }

// int main(int argc, char *argv[])
// {
//     // 设置APPID/AK/SK
//     std::string app_id = "119168281";
//     std::string api_key = "nnLIn3cbrp0tZZMRIJbFx86i";
//     std::string secret_key = "kw2fXu8bRXNzJRZVfurqkwLkEyMF1XqJ";

//     aip::Speech client(app_id, api_key, secret_key);
//     asr(client);
//     return 0;
// }
//////////////////////////////////////////////////////////////////
// 二次封装测试

#include "gflags/gflags.h"
#include "../../src//common/speech_rec.hpp"

DEFINE_string(app_id, "119168281", "语音平台应用ID");
DEFINE_string(api_key, "nnLIn3cbrp0tZZMRIJbFx86i", "语音平台API密钥");
DEFINE_string(secret_key, "kw2fXu8bRXNzJRZVfurqkwLkEyMF1XqJ", "语音平台加密密钥");

DEFINE_bool(run_mode, false, "程序的运行模式，false-调试； true-发布；");
DEFINE_string(log_file, "", "发布模式下，用于指定日志的输出文件");
DEFINE_int32(log_level, 0, "发布模式下，用于指定日志输出等级");

int main(int argc, char *argv[])
{
    google::ParseCommandLineFlags(&argc, &argv, true);
    init(FLAGS_run_mode, FLAGS_log_file, FLAGS_log_level);

    std::string file_content;
    aip::get_file_content("16k.pcm", &file_content);

    Spe_Client client(FLAGS_app_id, FLAGS_api_key, FLAGS_secret_key);
    std::string str = client.Recognition(file_content);
    std::cout << "音频信息: " << str << std::endl;

    return 0;
}